package com.atguigu.mybatis.demo;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

/**
 * Created by Smexy on 2023/3/22
 * <p>
 * <p>
 * Stream是Java8中操作集合的API。
 * 类似Spark中对RDD的操作！
 */
public class StreamDemo
{
    public static void main(String[] args) {

        //需要有一个Stream
        //直接构造
        Stream<Integer> s1 = Stream.of(1, 2, 3);
        //从数组中转换得到
        Integer[] nums = {1, 2, 3};
        Stream<Integer> s2 = Arrays.stream(nums);
        //Collection 类型自带方法返回Stream
        List<Integer> list = Arrays.asList(1, 2, 3);
        Stream<Integer> s3 = list.stream();

        //运算  对集合中的每个元素先 +10,取偶数
        List<Integer> result = s3
            .map(num -> num + 10)
            .filter(num -> num % 2 == 0)
            //执行结束操作 返回最终的结果 最常用的是Collect
            .collect(Collectors.toList());


        System.out.println(result);

    }
}
